/*
 * 英才汇硕信息科技有限公司 拥有本软件版权 2021 并保留所有权利。
 * Copyright 2021, YCHS Information&Science Technology Co.,Ltd,
 * All rights reserved.
 */
package com.yckj.dao;

import cn.hutool.crypto.SecureUtil;
import com.yckj.util.DbUtilHikari;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import cn.hutool.crypto.SecureUtil;

/**
 * 对用户表的操作：注册用户、删除用户、查询用户、修改用户
 * @author dongyuqi
 * @version 1.0
 * @date 2022/12/31
 */
public class UserDao {
    /**
     * 用户注册
     * uname 用户名
     * upsw 密码
     * 注册成功返回1，否则返回0
     *
     **/
    public int insertUser(String uname,String upsw){
        // 1.声明一些变量备用
        //conn代表数据库的连接
        Connection conn = null;
        //预编译对象：用pstmt执行SQL语句
        PreparedStatement pstmt = null;

        //注册成功与否的标志：1-注册成功、0-注册失败
        int flag = 0;

        //2.获取连接
        conn = DbUtilHikari.getConnection();

        //3.定义并准备SQL语句
        String sql = "INSERT INTO users(username,userpsw) VALUES(?,?)";
        try {
            pstmt = conn.prepareStatement(sql);

            //4.给？赋值
            pstmt.setString(1,uname);
            pstmt.setString(2, SecureUtil.md5(upsw));

            //5.执行sql语句
            flag = pstmt.executeUpdate();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        } finally {
            //6.关闭数据库资源
            DbUtilHikari.close(pstmt,conn);
        }

        return flag;
    }
}
